package com.neusoft.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import com.neusoft.po.Cart;

@Mapper
public interface CartMapper {

    @Select("SELECT * FROM cart WHERE userId = #{userId} " +
            "AND (businessId = #{businessId} OR #{businessId} IS NULL) ORDER BY cartId")
    public List<Cart> listCart(Cart cart);

    @Insert("insert into cart values(null,#{foodId},#{businessId},#{userId},1)")
    public int saveCart(Cart cart);

    @Update("update cart set quantity=#{quantity} where foodId=#{foodId} and businessId=#{businessId} and userId=#{userId}")
    public int updateCart(Cart cart);

    @Delete("DELETE FROM cart WHERE userId = #{userId} AND businessId = #{businessId} AND (foodId = #{foodId} OR #{foodId} IS NULL)")
    public int removeCart(Cart cart);
}
